package model.cardData;

import java.util.Collections;

public class StackCardSet extends CardSet {

	
	public StackCardSet() {
		super(CardVisibility.NONE);
		
		//Karten hinzu und mischen:
		for(CardValue val : CardValue.values()) {
			for(CardSuit sui : CardSuit.values()) {
				addCard(new Card(val, sui));
			}
		}
		//Kartendeck mischen:
		Collections.shuffle(cards);
	}
	
	/**
	 * Entfernt die oberste Karte vom Stapel und gibt sie zurück.
	 */
	public final Card pop() {
		if(cards.isEmpty()) {
			//TODO: exception
			return null;
		} else {
			Card c = cards.get(0);
			cards.remove(0);
			return c;
		}
	}
}
